import { Plugin } from '@sui/sui';

export const supportHooks =[
    // 应用启动时
    "onStart",
    // 应用成功渲染
    "onReady",
    // 渲染函数勾子
    "render",
    // 修改路由
    "modifyRoutes",
    // 运行时配置
    "getRuntimeConfig",
    // 修改渲染参数
    "modifyRenderOpts",
    // 修改页面props
    "modifyPageProps",
    // 修改子应用props
    "modifyMicroAppProps",
    // 路由改变
    "onRouteChange",
    // 路由渲染节点过滤器
    "routeElment",
    // 根节点过滤器
    "rootElement",
    //无权权限渲染
    "noAccessRender",
    //404渲染
    "notFoundRender",
    // 请求发送时
    "requestSend",
    // 请求返回后
    "requestResponse",
    // providers, 上下文相关的
    'innerProvider',
    // 多语言provider
    'i18nProvider',
    // 权限provider
    'accessProvider',
    // 数据流provider
    'dataflowProvider',
    // 外部provider
    'outerProvider',
    // 根provider
    'rootContainer'
]

const plugin = new Plugin({
    supportHooks
})

export default plugin